Systems and Methods to Generate a Customized Workout Routine

ABSTRACT

A computer-implemented method to generate a customized workout routine based on a physical fitness goal of a user is described. Data relating to an exercise apparatus is retrieved. Profile information for a user of the exercise apparatus is analyzed. A customized workout routine is generated for the user to implement with the exercise apparatus. The routine is based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent Application No. 61/593,294 filed Jan. 31, 2012.

BACKGROUND

Physical exercise is a bodily activity that helps promote and/or maintain physical fitness and an overall health and wellness. Frequent and regular physical exercise helps boost the immune system and may help prevent diseases of affluence, such as heart disease, cardiovascular disease, diabetes, and obesity. Physical exercise may also improve the mental health of an individual. In addition, exercise may prevent depression and promote or maintain a positive self-esteem.

Individuals that exercise may look for ways increase their motivation and resolve to continue exercising. For example, individuals may set personal goals they would like to achieve and then regularly exercise to accomplish these goals. Often times, the individual may be left on his/her own to figure out how to accomplish a particular goal. In addition, the individual may hire a personal trainer or other health coach to receive instructions on how to complete a particular goal.

Providers of exercise equipment are regularly introducing new exercise machines and equipment to be sold to gyms, individual consumers, schools, and the like. In some instances, an individual might not be familiar with a particular piece of exercise equipment. For example, the individual might not know how to use the equipment, the benefits of using the equipment, etc. As a result, the individual may choose to not use the equipment simply because he/she does not fully understand its functionality, benefits, etc.

One type of method and system to control an exercise apparatus is described in U.S. Pat. No. 7,985,164 issued to Darren C. Ashby and assigned to Icon IP, Inc. In this patent, an exercise device is provided with information stored on a portable memory device. The information may include personal user information, exercise programs, and motivational content. The portable memory device includes one or more algorithms or constructs usable for building custom workouts in response to a request by a user.

SUMMARY

In one aspect of the disclosure, a computer-implemented method to generate a customized workout routine based on a physical fitness goal of a user is described.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include retrieving data relating to an exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include analyzing profile information for a user of the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include generating a customized workout routine for the user to implement with the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include basing the routine on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include identifying at least one goal relating to physical fitness.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include scanning a barcode or a Quick Response (QR) code relating to the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the barcode or the QR code including encoded information relating to the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include establishing a near field communication (NFC) radio communication link.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include retrieving the data relating to the exercise apparatus via the link.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the data relating to the exercise apparatus including a video file.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the video file including a video demonstrating functions of the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include identifying at least one physical fitness goal included in the profile information.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include determining whether the exercise apparatus is related to the at least one physical fitness goal.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include, upon determining that the exercise apparatus is related to the at least one physical fitness goal, generating the customized workout routine for the user to implement using the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the customized workout routine including a number of repetitions to perform with the exercise apparatus, a quantity of weight to use with the exercise apparatus, a speed factor, a resistance factor, or a time period to use the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include tracking the activity of the user in relation to the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include analyzing the tracked activity to monitor the progress of the user in relation to completing a physical fitness goal.

In one aspect of the disclosure, a computing device is also described. The device may include a processor, memory in electronic communication with the processor, and a data sensing module, stored in the memory.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the data sensing module being configured to retrieve data relating to an exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the data sensing module being configured to analyze profile information for a user of the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the data sensing module being configured to generate a customized workout routine for the user to implement with the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the routine being based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.

In one aspect of the disclosure, a computer-program product is also described. The computer-program product may include a non-transitory computer-readable storage medium having instructions thereon.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the instructions including code programmed to retrieve data relating to an exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the instructions including code programmed to analyze profile information for a user of the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the instructions including code programmed to generate a customized workout routine for the user to implement with the exercise apparatus.

Another aspect of the disclosure may include any combination of the above-mentioned features and may further include the routine being based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments of the present method and system and are a part of the specification. The illustrated embodiments are merely examples of the present system and method and do not limit the scope thereof.

FIG. 1 illustrates a block diagram of one embodiment of an environment 100 in which the present systems and methods may be implemented.

FIG. 2 is a block diagram illustrating one embodiment of a client computing device.

FIG. 3 is a block diagram illustrating one embodiment of a profile module.

FIG. 4 is a block diagram illustrating one embodiment of a customized workout module.

FIG. 5 is a block diagram illustrating one embodiment of an exercise apparatus and a tracking module.

FIG. 6 is a flow diagram illustrating one embodiment of a method to generate a customized workout routine.

FIG. 7 is a flow diagram illustrating one embodiment of a method to generate a customized workout routine for an exercise apparatus based on physical fitness goals provided by the user.

FIG. 8 is a flow diagram illustrating one embodiment of a method to track the physical fitness progress of a user.

FIG. 9 depicts a block diagram of a computer system suitable for implementing the present systems and methods.

Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.

DETAILED DESCRIPTION

Systems and methods to provide customized workout routines are disclosed herein. Specifically, the present systems and methods provide a customized workout routine for specific exercise apparatuses based on physical fitness goals specified by a user. In addition, the present systems and methods may track a user's progress with respect to the workout routine. The physical fitness goal may be a goal to gain a certain amount of weight, decrease body fat by a certain percentage, run/walk a certain distance, lift a certain amount of weight on a weightlifting machine, and the like.

In one embodiment, the user may enter his/her goals on a computing device, such as a smartphone. The exercise apparatuses may include encoded information that is affixed or otherwise attached to the apparatuses. For example, an exercise apparatus may include a bar code, a Quick Response (QR) code, an Radio Frequency (RF) tag, etc. that includes information about the apparatus. The computing device may scan the encoded information affixed to the exercise apparatus, and based on the specified goals inputted by the user, the computing device may generate a customized workout routine for that particular exercise apparatus that will assist the user to accomplish his/her physical fitness goals.

Referring now to the Figures, FIG. 1 illustrates a block diagram of one embodiment of an environment 100 in which the present systems and methods may be implemented. In one configuration, an exercise apparatus 102 may exchange information with a client computing device 106. The client computing device 106 may acquire the information from the apparatus 102. For example, the information may be embedded as a data exchanging module 104 that is included on or by the exercise apparatus 102. Examples of the data exchanging module 104 may include, but are not limited to, barcodes, QR codes, RF tags, etc. The module 104 may be affixed or attached to an area of the apparatus 102 or an area that is not on the apparatus 102 (e.g., a wall close to the apparatus 102). The client computing device 106 may include a data sensing module 108 that is able to sense the data exchanging module 104. For example, the sensing module 108 may provide scanning capabilities that allows the device 106 to scan the data exchanging module 104 to obtain information about the apparatus 102. For example, the data exchanging module 104 may be a barcode and the data sensing module 108 may be a barcode scanner. In another embodiment, the data exchanging module 104 and the data sensing module 108 may include near field communication (NFC) capabilities. As a result, using NFC standards, a radio communication link may be established between the apparatus 102 and the device 106. The client computing device 106 may acquire the information from the exercise apparatus 102 via the radio communication link. The apparatus 102 and the device 106 may exchange information via other methods in addition to bar codes, QR codes, and NFC technologies.

Examples of the exercise apparatus 102 may include a weight machine (e.g., a fly machine, a leg press machine, a leg curl machine, a leg extension machine, a cable lateral pull-down machine, a triceps pull-down machine, a row machine, etc.). The exercise apparatus 102 may also be a free weight, such as a dumbbell, a medicine ball, an exercise ball, a bench press, etc. In another embodiment, the exercise apparatus 102 may be a cardio machine (e.g., a treadmill, a stationary bike, a spinner bike, a stair machine, etc.).

In one embodiment, the client computing device 106 may be a smartphone, a laptop, a tablet, or any other portable computing device. In one configuration, the client computing device 106 may be any device that is able to detect, receive, and interpret the data acquired from the data exchanging module 104. To interpret the received data, the client computing device 106 may communicate with a server 112 across a network 110 connection. The network 110 connection may be a Wi-Fi, a wireless local area network (WLAN), a cellular network, and the like. The server 112 may communicate with an exercise apparatus database 114. The database 114 may be external to the server 112, or the database 114 may be built into the server 112. In one embodiment, the exercise apparatus database 114 may store information regarding the exercise apparatus 102. For example, the database 114 may store instructions that indicate how to properly use the exercise apparatus 102. The database 114 may also store videos that demonstrate how to use the apparatus 102. In one example, the client computing device 106 may acquire information from the apparatus, such as an identifier that identifies the apparatus 102. The identifier may be communicated to the server 112. The server 112 may use the identifier to locate additional information in the database 114 about the apparatus 102. The server may communicate the additional information about the apparatus 102 to the computing device 106. In one embodiment, the data exchanging module 104 may include the additional information that is stored in the database 114. As a result, when the computing device 106 acquires the information from the apparatus 102, there may be no need for the client 106 to communicate with the server 112 to acquire the additional information.

FIG. 2 is a block diagram illustrating one embodiment of a client computing device 106-a. The client computing device 106-a may be an example of the client computing device 106 illustrated in FIG. 1. In one example, the client computing device 106-a may include a data sensing module 108-a. In one configuration, the module 108-a may include a QR code module 202, a barcode reading module 204, an NFC module 206, a profile module 208, a customized workout module 210, and a tracking module 212. Details regarding each of these modules will be described below.

In one embodiment, the QR code module 202 may sense data affixed to or by the exercise apparatus 102 that is encoded as a QR code. Similarly, the barcode reading module 204 may sense data embedded or encoded as a barcode that may be attached to or near the exercise apparatus 102. The modules 202 and 204 may sense the data by scanning the QR code or the barcode that is attached to the exercise apparatus 102. The NFC module 206 may establish a radio communication link with the exercise apparatus 102. The NFC module 206 may acquire data from the exercise apparatus 102 via the radio communication link.

In one configuration, the profile module 208 may receive and store input from a user relating to the user's profile information. Examples of profile information may include the user's age, height, weight, etc. The profile module 208 may further receive and store input from the user relating to physical fitness goals of the user. Examples of physical fitness goals may include a desired weight loss, strength conditioning goals, target heart rate goals, running/walking distance goals, specific muscle definition goals etc. The customized workout module 210 may receive the data sensed from the modules, 202, 204, and/or 206. The workout module 210 may also receive information stored by the profile module 208. In one embodiment, the workout module 210 may generate a customized workout routine for the user to perform with the exercise apparatus 102 in order to progress towards achieving the physical fitness goals stored in the profile module.

As an example, the client computing device 106-a may receive data relating to the exercise apparatus 102. The data may indicate the name of the apparatus 102, the functions of the exercise apparatus 102, instructions on how to properly use the exercise apparatus 102, the muscle group focused on by the exercise apparatus 102, the health benefits of using the apparatus 102, video or other multimedia data that demonstrate how to use the apparatus 102, etc. The data may be received directly from the data exchange module 104 affixed to the apparatus 102 and/or from the server 112 that obtains the data from the database 114 and communicates the data to the client computing device 106. The customized workout module 210 may analyze the received data about the exercise apparatus 102 together with the information stored by the profile module 208. Based on this analysis, the customized workout module 210 may generate a workout routine for the user to perform with the exercise apparatus 102. The generated workout routine may be focused on helping the user accomplish one or more physical fitness goals stored by the profile module 208. For example, the user may specify a physical fitness goal of bench pressing 200 lbs. The profile module 208 may also include information that indicates that the user is currently able to bench 160 lbs. The user may then approach a chest fly machine with the client computing device 106-a. A barcode may be affixed on a portion of the machine. The computing device 106-a may scan the barcode and obtain data about the machine. As stated above, the data may be acquired from scan of the barcode and/or from the server 112. For example, the client 106-a may scan the barcode and retrieve the identity of the machine (in this example, a chest fly machine). The identity may be transmitted to the server 112. The server 112 may use the received identity to search the database 114 for data about the machine. The server 112 may then communicate the data back to the client computing device 106-a.

The data (either obtained directly from the exercise apparatus 102 and/or from the server 112) may indicate that the chest fly machine focuses on certain chest muscles. The data may also include a video demonstration that illustrates how to properly use the chest fly machine. The customized workout module 210 may generate a workout routine (e.g., number of repetitions, sets, and the weight resistance) for the user to follow when using the chest fly machine. The routine may be generated based on an analysis of the information stored by the profile module 208 as well as the data acquired from the exercise apparatus (directly and/or indirectly from the server 112). The workout routine may be customized for the user to assist the user to accomplish the physical fitness goal(s) included in the profile module. As a result, the workout routine, if followed by the user, may assist the user to accomplish the goal of bench pressing 200 lbs.

In one example, the profile module 208 may not include physical fitness goal information that relates to a certain exercise apparatus 102. For instance, the sensing module 108-a may acquire information relating to a treadmill by scanning a barcode, QR code, etc. The customized workout module 210 may analyze the profile module 208 and discover that the user has not entered a goal that may be accomplished by using the treadmill. In one configuration, the customized module 210 may query the user as to whether the user would like to enter a physical fitness goal that may be achieved by using the treadmill. For example, the module 210 may display the following query “Do you want to set a goal to run 3 miles in 30 minutes?” If the user selects this goal, the workout module 210 may continue to generate a customized workout routine for the user to assist the user to complete this goal. Instead of selecting a goal generated by the customized workout module 210, the user may provide his/her own goal as it relates to the treadmill. Once the goal is provided, the module 210 may generate a customized workout routine.

The tracking module 212 may track the progress of the user while the user is using the exercise apparatus 102. For example, the tracking module 212 may be a camera or other tracking device that is capable of monitoring the movement of the user. The tracking module 212 may also track the progress of the user towards completing the goals specified in the profile module 208. For example, the profile module 208 may include a goal to lose 20 lbs. The tracking module 212 may track the weight of the user to allow the user to see his/her progress towards achieving the goal of losing 20 pounds. In one example, the user may manually enter his/her weight into the tracking module 212. In another embodiment, the tracking module 212 may track the progress of the user by receiving automatic updates via email, SMS messages, and the like that include the current state of the user. For example, the user may visit a website and record his/her weight on the website. The website may communicate with the tracking module 212 to provide the updated weight of the user.

FIG. 3 is a block diagram illustrating one embodiment of a profile module 208-a. The profile module 208-a may be an example of the profile module 208 illustrated in FIG. 2. In one configuration, the profile module 208-a may include a personal information module 302 and a goal information module 304.

In one embodiment, the personal information module 302 may include personal information about the user, such as, but not limited to, the user's age, height, weight, resting heart rate, and any other biometric information. The goal information module 304 may include physical fitness goals provided by the user. For example, the goal information module 304 may store a weight loss goal, a strength conditioning goal, a cardio goal, and the like. In one example, the user may manually input information to the modules 302, 304 via interfaces provided by the client computing device 106. In another embodiment, the user may provide the information to the modules 302, 304 remotely by interfacing with a website and inputting the information. The information may then be transmitted from the website to the client computing device 106 and stored as part of the modules 302, 304.

FIG. 4 is a block diagram illustrating one embodiment of a customized workout module 210-a. The module 210-a may be an example of the customized workout module 210 of FIG. 2. In one embodiment, the module 210-a may include a profile analysis module 402, an exercise apparatus analysis module 404, a workout generation module 406, and a demonstration generation module 408.

In one configuration, the profile analysis module 402 may analyze information provided by the profile module 208. The information provided by the profile module 208 may include the physical fitness goals entered by the user. The workout generation module 404 may generate a customized workout routine for the user with relation to the exercise apparatus 102. For example, the exercise apparatus 102 may be a dumbbell. The profile analysis module 402 may determine that the user has set a goal to be able to do 10 repetitions of a bicep curl using a 50 pound dumbbell. The profile analysis module 402 may further determine from the information provided by the profile module 208 that the user has previously performed curls using 25 lb dumbbells. The exercise apparatus analysis module 404 may analyze data about the apparatus. The data may be received by scanning a barcode, QR code, etc. that may be affixed to the apparatus. The analysis module 404 may determine from the specific muscles focused on by the exercise apparatus.

The workout generation module 406 may generate a schedule of workouts for dumbbells of various weights that will gradually build up the user's bicep muscles to eventually reach the user's goal of performing 10 repetitions of a bicep curl using a 50 lb dumbbell. For example, the generation module 406 may suggest the user begin by performing 3 sets of 10 repetitions using 25 lb dumbbells. The generated workout may instruct the user to perform this workout four times a week. The generation module 406 may generate a workout that specifies that each week the weight of the dumbbell should be increased by 5 lbs. As a result, based on the goals provided by the user, the generation module 404 may generate a customized workout for a particular exercise apparatus 102 to assist the user to achieve his/her goals.

The demonstration generation module 408 may generate and/or provide a demonstration of how to use the exercise apparatus 102. For example, the generation module 408 may generate and/or provide a video that the user may view on the client computing device 106 to learn how to properly use the exercise apparatus 102. The demonstration generation module 406 may also generate and/or provide a text document that the user may read that includes instructions on how to use the exercise apparatus 102.

FIG. 5 is a block diagram illustrating one embodiment of an exercise apparatus 102-a and a tracking module 212-a. In one example, the exercise apparatus 102-a may be an example of the exercise apparatus 102 illustrated in FIG. 1. The tracking module 212-a may be an example of the tracking module 212 illustrated in FIG. 2.

In one embodiment, the exercise apparatus 102-a may include a monitoring apparatus 502-a-1. The monitoring apparatus 502-a-1 may monitor the user while the user is using the exercising apparatus 102-a. For example, the monitoring apparatus 502-a-1 may be a camera installed or connected to the exercise apparatus 102-a. The apparatus 502-a-1 may also be a magnetic strip attached to the exercise apparatus 102-a that detects movement of the apparatus 102 (e.g., a dumbbell). The monitoring apparatus 502-a-1 may record the actions of the user while the user is performing exercises using the exercising apparatus 102-a. The recorded actions may be transmitted to the tracking module 212-a.

The tracking module 212-a may also include a monitoring apparatus 502-a-2 to record the actions of the user while the user is engaged with a particular exercise apparatus. The apparatus 502-a-2 may be a camera, or other tracking device to record the activity of the user. The tracking module 212-a may further include a workout history module 504 and a goal monitoring module 506. The workout history module 504 may store information regarding past workouts performed by the user. For example, the monitoring apparatuses 502-a-1 and/or 502-a-2 may monitor a user running on a treadmill for 30 minutes. At the conclusion of the 30 minutes, the monitoring apparatus 502 may communicate the information to the workout history module 504. If the user is using a weight machine, the monitoring apparatus 502 may detect the number of repetitions as well as the weight used during the repetitions. As a result, the workout history module 504 may include a log that documents the past workout activity of the user with various exercise machines.

In one embodiment, the goal monitoring module 506 may monitor the goals specified by the user. The module 506 may track the progress of the user with respect to achieving the goals. For example, the goal monitoring module 506 may communicate with the workout history module 504 to determine whether the user has satisfied a particular goal. The monitoring module 506 may generate a transmit goal update messages to the user (e.g., via email, SMS text, etc.) that indicate to the user the user's progress in completing a goal. The module 506 may also send a goal completed message to the user when it is determined that a physical fitness goal has been accomplished.

FIG. 6 is a flow diagram illustrating one embodiment of a method 600 to generate a customized workout routine. In one example, the method 600 may be implemented by the client computing device 106 of FIG. 1 or 2. More specifically, the method 600 may be implemented by the data sensing module 108 of FIG. 1 or 2.

At block 602, data relating to an exercise apparatus may be retrieved. For example, the exercise apparatus may include a barcode, a QR code, or other data embedded or printed on the exercise apparatus 102. The client computing device 106 may detect, scan, etc. the embedded data. The data may provide information about the exercise apparatus 102. At block 604, profile information for a user may be analyzed. The profile information may include personal information about the user, as well as information regarding various goals the user has set relating the user's physical fitness. At block 608, a customized workout routine for the exercise apparatus 102 may be generated. The customized routine may be based on the analyzed profile information as well as the data relating to the exercise apparatus. For example, the data that is detected relating to the exercise apparatus may indicate the muscle group focused on by the apparatus and other physical fitness benefits that one can achieve by using the exercise apparatus. The analyzed profile information may indicate the user's goal for his/her physical fitness. The customized workout routine that is generated may provide instructions to the user on how to use the exercise apparatus, for how long to use the exercise apparatus, and the amount of time or weights that the user should use on the exercise apparatus.

Thus, the method 600 may provide a customized workout routine for a particular exercise apparatus that may assist the user to achieve a particular physical fitness goal. It should be noted that the method 600 is just one implementation and that the operations of the method 600 may be rearranged or otherwise modified such that other implementations are possible.

FIG. 7 is a flow diagram illustrating one embodiment of a method 700 to generate a customized workout routine for an exercise apparatus based on physical fitness goals provided by the user. In one configuration, the method 700 may be implemented by the client computing device 106 of FIG. 1 or 2. Specifically, the method 700 may be implemented by the data sensing module 108 of FIG. 1 or 2.

At block 702, profile information that includes goals relating to physical fitness may be received. The goals may be, for example, a goal to lose a certain amount of weight, a goal to build a certain muscle group, a goal to run a certain distance, etc. At block 704, data relating to an exercise apparatus may be sensed or detected. This may be accomplished by scanning a barcode, QR code or other data embedded on the exercise apparatus. Data may also be sensed via NFC technologies. For example, a radio communication link may be established between the client computing device 106 and the exercise apparatus. The data may be passed to the computing device 106 via the link.

At block 706, the physical fitness goals may be analyzed. If the exercise apparatus 102 is not designed to assist the user in accomplishing one of the listed physical fitness goals, the user may be prompted to select a pre-generated goal that may be accomplished by the exercise apparatus 102. The user may also input a custom goal that may be completed using the exercise apparatus.

At block 708, past workout history information for the exercise apparatus 102 may be analyzed. For example, the user may have previously used the exercise apparatus 102 and the past workout history information may be have been previously recorded. This may include the amount of weights used by the user when the user previously used the exercise apparatus, the previous distance ran or walked by the user on the exercise apparatus 102 (for example, if the exercise apparatus is a treadmill), and the like. The past workout history information may have been inputted by the user and/or previously tracked by the exercise apparatus 102 or the client computing device 106.

At block 710, a customized workout routine for the exercise apparatus 102 may be generated. The customized workout routine may assist the user in accomplishing the physical fitness goals specified by the user. The workout routine may take into account the past history workout information of the user. As a result, if the user has previously used the particular exercise apparatus 102, the routine may suggest that the user begins working out at the level the user previously completed with the exercise apparatus 102. Thus, the customized workout routine helps the user to continue to improve without requiring the user to begin at a level that is below the user's physical fitness capabilities.

Thus the method 700 may provide a customized workout routine based on physical fitness goals provided by the user. It should be noted that the method 700 is just one implementation and that the operations of the method 700 may be rearranged or otherwise modified such that other implementations are possible.

FIG. 8 is a flow diagram illustrating one embodiment of a method to track the physical fitness progress of a user. In one embodiment, the method 800 may be implemented by the client computing device 106 of FIG. 1 or 2. In particular, the method 800 may be implemented by the data sensing module 108 of FIG. 1 or 2. Specifically, the method 800 may be implemented by the tracking module 212 of FIG. 2 or 5.

At block 802, the physical activity of a user may be tracked. The physical activity may be tracked by a monitoring apparatus 502 that is installed or otherwise connected to the exercise apparatus 102 and/or installed within the client computing device 106. The physical activity may be tracked via a camera, gyroscope, magnetic strip, or other detection mechanism. At block 804, the tracked physical activity may be recorded as past workout history information. For example, a user may run on a treadmill for 30 minutes and that activity may be tracked by the monitoring apparatus 502. At the conclusion of the 30 minutes the tracked physical activity may be recorded by the tracking module 212 as past workout history information. The past workout history information may include the amount of time the user used the exercise apparatus, the type of exercise apparatus used, the speed (if applicable) settings, the amount of weight (if applicable), and the like. At block 806, goal information may be analyzed. The goal information may be a physical fitness goal. At block 808, a determination may be made as to whether the goal has been completed. The determination may be made by comparing the recorded workout history information with the physical fitness goal. For example, the goal may be to run 3 miles on a treadmill in less than 30 minutes. The past workout history information may indicate that the user recently ran 3.3 miles in 25 minutes. As a result, it may be determined 808 that the goal has been completed. If it is determined that the goal has not been completed, the method 800 may return to continue to track the physical activity of the user. If, however, it is determined that the goal has been completed, at block 810, a notification may be generated that the goal is completed. The notification may be a text message, an email, an uploaded message to a website, etc. that indicates to the user that the user has completed the physical fitness goal.

Thus, the method 800 may provide a way to track the progress of the user in relation to completing a physical fitness goal. It should be noted that the method 800 is just one implementation and that the operations of the method 800 may be rearranged or otherwise modified such that other implementations are possible.

FIG. 9 depicts a block diagram of a computer system 910 suitable for implementing the present systems and methods. The computer system 910 may be an example of the client computing device 106 of FIG. 1. Computer system 910 includes a bus 912 which interconnects major subsystems of computer system 910, such as a central processor 914, a system memory 917 (typically RAM, but which may also include ROM, flash RAM, or the like), an input/output controller 918, an external audio device, such as a speaker system 920 via an audio output interface 922, an external device, such as a display screen 924 via display adapter 926, serial ports 928 and 930, a keyboard 932 (interfaced with a keyboard controller 933), multiple USB devices 992 (interfaced with a USB controller 991), a storage interface 934, a floppy disk unit 937 operative to receive a floppy disk 938, a host bus adapter (HBA) interface card 935A operative to connect with a Fibre Channel network 990, a host bus adapter (HBA) interface card 935B operative to connect to a SCSI bus 939, and an optical disk drive 940 operative to receive an optical disk 942. Also included are a mouse 946 (or other point-and-click device, coupled to bus 912 via serial port 928), a modem 947 (coupled to bus 912 via serial port 930), and a network interface 948 (coupled directly to bus 912).

Bus 912 allows data communication between central processor 914 and system memory 917, which may include read-only memory (ROM) or flash memory (neither shown), and random access memory (RAM) (not shown), as previously noted. The RAM is generally the main memory into which the operating system and application programs are loaded. The ROM or flash memory can contain, among other code, the Basic Input-Output system (BIOS) which controls basic hardware operation such as the interaction with peripheral components or devices. For example, the data sensing module 108-b to implement the present systems and methods may be stored within the system memory 917. Applications resident with computer system 910 are generally stored on and accessed via a non-transitory computer readable medium, such as a hard disk drive (e.g., fixed disk 944), an optical drive (e.g., optical drive 940), a floppy disk unit 937, or other storage medium. Additionally, applications can be in the form of electronic signals modulated in accordance with the application and data communication technology when accessed via network modem 947 or interface 948.

Storage interface 934, as with the other storage interfaces of computer system 910, can connect to a standard computer readable medium for storage and/or retrieval of information, such as a fixed disk drive 944. Fixed disk drive 944 may be a part of computer system 910 or may be separate and accessed through other interface systems. Modem 947 may provide a direct connection to a remote server via a telephone link or to the Internet via an internet service provider (ISP). Network interface 948 may provide a direct connection to a remote server via a direct network link to the Internet via a POP (point of presence). Network interface 948 may provide such connection using wireless techniques, including digital cellular telephone connection, Cellular Digital Packet Data (CDPD) connection, digital satellite data connection or the like.

Many other devices or subsystems (not shown) may be connected in a similar manner (e.g., scanners, digital cameras and so on). Conversely, all of the devices shown in FIG. 9 need not be present to practice the present systems and methods. The devices and subsystems can be interconnected in different ways from that shown in FIG. 9. The operation of a computer system such as that shown in FIG. 9 is readily known in the art and is not discussed in detail in this application. Code to implement the present disclosure can be stored in a non-transitory computer-readable medium such as one or more of system memory 917, fixed disk 944, optical disk 942, or floppy disk 938. The operating system provided on computer system 910 may be MS-DOS®, MS-WINDOW®, OS/2®, UNIX®, Linux®, or another known operating system.

Moreover, regarding the signals described herein, those skilled in the art will recognize that a signal can be directly transmitted from a first block to a second block, or a signal can be modified (e.g., amplified, attenuated, delayed, latched, buffered, inverted, filtered, or otherwise modified) between the blocks. Although the signals of the above described embodiment are characterized as transmitted from one block to the next, other embodiments of the present systems and methods may include modified signals in place of such directly transmitted signals as long as the informational and/or functional aspect of the signal is transmitted between blocks. To some extent, a signal input at a second block can be conceptualized as a second signal derived from a first signal output from a first block due to physical limitations of the circuitry involved (e.g., there will inevitably be some attenuation and delay). Therefore, as used herein, a second signal derived from a first signal includes the first signal or any modifications to the first signal, whether due to circuit limitations or due to passage through other circuit elements which do not change the informational and/or final functional aspect of the first signal.

INDUSTRIAL APPLICABILITY

In order to motivate a user to begin exercising, continue exercising, and to enjoy their workout, it is desired to have a program that evaluates the user's physical fitness goals, analyzes the exercise equipment the user may be interested in using, and generates a customized workout routine for the various exercise machines that will help the user accomplish the physical fitness goals. In general, the system and methods of the present disclosure provide a device capable of retrieving information about an exercise machine, identifying the physical fitness goals of the user, and creating a workout routine for the user to follow using the machine that will assist the user to complete the physical fitness goals.

The user may input physical fitness goals via a computing device that retrieves information about the exercise machines. For example, the user may enter his/her goals on a smartphone or other portable device. In another embodiment, the user may input the goals via a website accessed on any number of computing devices. The goals may then be accessed by the portable computing device via the website or via an application installed on the portable computing device. The various exercise apparatuses may include encoded information affixed on or near each apparatus. For example, an exercise machine may include a barcode or other form of encoded data attached to a portion of the machine. The information may also be attached to the packaging of an exercise machine.

In one example, the user may activate a scanning feature of the smartphone to scan the encoded information affixed to an exercise machine. After performing the scan, the smartphone may display to the user information about the machine. For example, the name of the machine may be displayed. Instructions on how to properly use the machine may also be displayed. The instructions may include a text file, a video demonstration, or other means of conveying instructions to the user. This information may be embedded in the code affixed to the machine. In another embodiment, after the scan is performed, the portable device may transmit the identity of the exercise machine to a back-end server. The server may query a database using the identity of the machine. The database may store the instructions relating to the machine. The server may transmit the instructions to the portable device and the instructions may then be displayed to the user.

In addition to using a scanning procedure to acquire the information about an exercise machine, the portable device and the machine may include NFC capabilities. As a result, a radio communications link may be established between the portable device and the exercise machine. The information about the machine may be transmitted to the portable device via this communications link.

In one configuration, when the portable device retrieves information about an exercise machine, the portable device may also access physical fitness goals for the user. The user may have previously entered the goals or, upon retrieving information about an exercise machine, the portable device may query the user to select or enter physical fitness goals. Upon accessing the goals, the information about the exercise machine may be analyzed to determine whether the exercise machine may assist the user to accomplish one or more of the goals. If the machine cannot help the user accomplish the provided goals, the user may be queried as to whether he/she would like to select (or provide) a goal that this particular exercise machine may help the user accomplish. If the machine is able to assist the user in completing a goal, a customized workout routine may be generated and displayed to the user. The workout routine may provide instructions to the user relating to the number of repetitions, sets, the amount of weight, the amount of time, speed, incline, resistance, etc. that the user should perform to accomplish a goal using the exercise machine.

The ability to track the user's progress encourages the user to continue following the customized workout routine in order to accomplish a goal. The exercise machines may include tracking devices to track the user's progress. In addition, the user's activity on the exercise machine may be monitored by a tracking feature included in the portable device. The tracking disclosed herein may be performed automatically. As a result, there is no need for the user to manually record and monitor the distance, speed, time, repetitions, amount of weight, etc. that the user is performing. The user may, however, manually enter his/her activities to track his/her progress.

In conclusion, the present systems and methods provide for a mechanism by which users enter physical fitness goals and customized workout routines are generated for various exercise apparatuses that will help the user accomplish the goals. For example, after the user provides a goal, the systems and methods may generate a list of possible exercise equipment that may assist the user to accomplish the goal. The user may also use the portable device to scan a barcode attached to a piece of exercise equipment to retrieve instructional information about the equipment. The systems and methods may then generate a customized workout routine for the user to follow that will help the user complete the goals he/she has provided. 

What is claimed is:
 1. A computer-implemented method, comprising: retrieving, by a hardware processor, data relating to an exercise apparatus; analyzing, by the hardware processor, profile information for a user of the exercise apparatus; and generating, by the hardware processor, a customized workout routine for the user to implement with the exercise apparatus, wherein the routine is based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.
 2. The method of claim 1, wherein analyzing the profile information comprises identifying at least one goal relating to physical fitness.
 3. The method of claim 1, wherein retrieving data relating to the exercise apparatus comprises scanning a barcode relating to the exercise apparatus, wherein the barcode comprises encoded information relating to the exercise apparatus.
 4. The method of claim 1, wherein retrieving data relating to the exercise apparatus comprises scanning a Quick Response (QR) code relating to the exercise apparatus, wherein the QR code comprises encoded information relating to the exercise apparatus.
 5. The method of claim 1, wherein retrieving data relating to the exercise apparatus comprises: establishing a near field communication (NFC) radio communication link; and retrieving the data via the link.
 6. The method of claim 1, wherein the data relating to the exercise apparatus comprises a video file including a video demonstrating functions of the exercise apparatus.
 7. The method of claim 1, wherein generating the customized workout routine comprises: identifying at least one physical fitness goal included in the profile information; determining whether the exercise apparatus is related to the at least one physical fitness goal; and upon determining that the exercise apparatus is related to the at least one physical fitness goal, generating the customized workout routine for the user to implement using the exercise apparatus.
 8. The method of claim 1, wherein the customized workout routine comprises a number of repetitions to perform with the exercise apparatus, a quantity of weight to use with the exercise apparatus, a speed factor, a resistance factor, or a time period to use the exercise apparatus.
 9. The method of claim 1, further comprising: tracking the activity of the user in relation to the exercise apparatus; and analyzing the tracked activity to monitor the progress of the user in relation to completing a physical fitness goal.
 10. A computing device, comprising: a processor; memory in electronic communication with the processor; a data sensing module, stored in the memory, the data sensing module configured to: retrieve data relating to an exercise apparatus; analyze profile information for a user of the exercise apparatus; and generate a customized workout routine for the user to implement with the exercise apparatus, wherein the routine is based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.
 11. The computing device of claim 10, wherein the data sensing module is further configured to identify at least one goal relating to physical fitness.
 12. The computing device of claim 10, wherein the data sensing module is further configured to scan a barcode relating to the exercise apparatus, wherein the barcode comprises encoded information relating to the exercise apparatus.
 13. The computing device of claim 10, wherein the data sensing module is further configured to scan a Quick Response (QR) code relating to the exercise apparatus, wherein the QR code comprises encoded information relating to the exercise apparatus.
 14. The computing device of claim 10, wherein the data sensing module is further configured to: establish a near field communication (NFC) radio communication link; and retrieve the data via the link.
 15. The computing device of claim 10, wherein the data relating to the exercise apparatus comprises a video file including a video demonstrating functions of the exercise apparatus.
 16. The computing device of claim 10, wherein the data sensing module is further configured to: identify at least one physical fitness goal included in the profile information; determine whether the exercise apparatus is related to the at least one physical fitness goal; and upon determining that the exercise apparatus is related to the at least one physical fitness goal, generate the customized workout routine for the user to implement using the exercise apparatus.
 17. The computing device of claim 10, wherein the customized workout routine comprises a number of repetitions to perform with the exercise apparatus, a quantity of weight to use with the exercise apparatus, a speed factor, a resistance factor, or a time period to use the exercise apparatus.
 18. The computing device of claim 10, wherein the data sensing module is further configured to: track the activity of the user in relation to the exercise apparatus; and analyze the tracked activity to monitor the progress of the user in relation to completing a physical fitness goal.
 19. A computer-program product, the computer-program product comprising a non-transitory computer-readable storage medium having instructions thereon, the instructions comprising: code programmed to retrieve data relating to an exercise apparatus; code programmed to analyze profile information for a user of the exercise apparatus; and code programmed to generate a customized workout routine for the user to implement with the exercise apparatus, wherein the routine is based on the analyzed profile information of the user and the retrieved data relating to the exercise apparatus.
 20. The computer-program product of claim 19, wherein the instructions comprising code programmed to analyze the profile information further comprise code programmed to identify at least one goal relating to physical fitness. 